package net.tv90.weatherserveradmin.model.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.io.Serializable;

@Data
public class WeatherStationDataDTO implements Serializable {

    // 基本信息
    @JsonProperty("Station_Id_C")
    private String stationId;

    @JsonProperty("Year")
    private int year;

    @JsonProperty("Mon")
    private int month;

    @JsonProperty("Day")
    private int day;

    @JsonProperty("Hour")
    private int hour;

    @JsonProperty("PRS")
    private double prs; // 气压

    @JsonProperty("PRS_Sea")
    private double prsSea; // 海平面气压

    @JsonProperty("PRS_Max")
    private double prsMax; // 最高气压

    @JsonProperty("PRS_Min")
    private double prsMin; // 最低气压

    @JsonProperty("TEM")
    private double tem; // 温度/气温

    @JsonProperty("TEM_MAX")
    private double temMax; // 最高气温

    @JsonProperty("TEM_MIN")
    private double temMin; // 最低气温

    @JsonProperty("RHU")
    private int rhu; // 相对湿度

    @JsonProperty("RHU_Min")
    private int rhuMin; // 最小相对湿度

    @JsonProperty("VAP")
    private double vap; // 水汽压

    @JsonProperty("PRE_3h")
    private double pre3h; // 3小时降水量

    @JsonProperty("WIN_D_INST_Max")
    private String winDInstMax; // 极大风速的风向 (角度)

    @JsonProperty("WIN_S_MAX")
    private double winSMax; // 最大风速 (米/秒)

    @JsonProperty("WIN_D_S_Max")
    private int winDSMax; // 最大风速的风向 (角度)

    @JsonProperty("WIN_S_Avg_2mi")
    private double winSAvg2mi; // 2分钟平均风速 (米/秒)

    @JsonProperty("WIN_D_Avg_2mi")
    private int winDAvg2mi; // 2分钟平均风向 (角度)

    // 观测要素
    @JsonProperty("WEP_Now")
    private String wepNow; // 现在天气

    @JsonProperty("WIN_S_Inst_Max")
    private double winSInstMax; // 极大风速 (米/秒)

    @JsonProperty("VIS")
    private double vis; // 水平能见度 (人工)

    @JsonProperty("CLO_Cov")
    private int cloCov; // 总云量

    @JsonProperty("CLO_COV_Low")
    private int cloCovLow; // 低云量

    @JsonProperty("CLO_COV_LM")
    private int cloCovLm; // 云量 (低云或中云)

    @JsonProperty("Datetime")
    private String datetime; // 资料时间
}
